<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>SuperBomberman: Référence du fichier dennemis.h</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Généré par Doxygen 1.5.5 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Page&nbsp;principale</span></a></li>
      <li class="current"><a href="files.html"><span>Fichiers</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>Référence du fichier dennemis.h</h1>Déclarations des types et fonctions pour l'utilisation d'un ensemble d'Ennemis au cours d'une partie de Bomberman. <a href="#_details">Plus de détails...</a>
<p>
<code>#include &quot;<a class="el" href="ennemi_8h-source.html">ennemi.h</a>&quot;</code><br>
<code>#include &quot;<a class="el" href="liste_8h-source.html">liste.h</a>&quot;</code><br>

<p>
<a href="dennemis_8h-source.html">Aller au code source de ce fichier.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Structures de données</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><b>sdEnnemi</b></td></tr>

<tr><td colspan="2"><br><h2>Définition de type</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="67ce43365afc3fff60d09eb5a8b3f99f"></a><!-- doxytag: member="dennemis.h::dEnnemi" ref="67ce43365afc3fff60d09eb5a8b3f99f" args="" -->
typedef struct sdEnnemi&nbsp;</td><td class="memItemRight" valign="bottom"><b>dEnnemi</b></td></tr>

<tr><td colspan="2"><br><h2>Fonctions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dennemis_8h.html#d7d0de3dee9521b0d68d819e03be4e24">dEnnemi_Initialisation</a> (dEnnemi &amp;e, const Terrain &amp;t, const int &amp;nb)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fonction qui Initialise la liste d'Ennemis et les affecte sur le Terrain.  <a href="#d7d0de3dee9521b0d68d819e03be4e24"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dennemis_8h.html#687e97e24ff526b42b9969055a85fe20">dEnnemi_SupprimeEnnemi</a> (dEnnemi &amp;e, Ennemi *m)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fonction qui Initialise la liste d'Ennemis et les affecte sur le Terrain.  <a href="#687e97e24ff526b42b9969055a85fe20"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dennemis_8h.html#0b8866784edc66fa0a1df290f5381916">dEnnemi_Testament</a> (dEnnemi &amp;e)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fonction qui supprime proprement en Mémoire la liste d'Ennemis.  <a href="#0b8866784edc66fa0a1df290f5381916"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dennemis_8h.html#82a5e345f7350c5a53d475a51ba26c83">dEnnemi_Mouvement</a> (dEnnemi &amp;e, const Terrain &amp;t)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fonction qui gère le mouvement de chaque Ennemis de la liste.  <a href="#82a5e345f7350c5a53d475a51ba26c83"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dennemis_8h.html#96f1757b6b7f81867d296b4c22a0cc8a">dEnnemi_PresenceSurBombe</a> (dEnnemi &amp;e, Bombe *b, Terrain &amp;t)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fonction qui teste si un Ennemi est sur le rayon d'explosion de la Bombe.  <a href="#96f1757b6b7f81867d296b4c22a0cc8a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dennemis_8h.html#f9fa136d9aa779c0b89528bf2224dcca">dEnnemi_GetPosition</a> (dEnnemi &amp;e)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fonction qui renvoie les positions des Ennemis de la Liste.  <a href="#f9fa136d9aa779c0b89528bf2224dcca"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dennemis_8h.html#fb49a06f55bafd36359fd4c8e5366e35">dEnnemi_GetDirection</a> (dEnnemi &amp;e)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fonction qui gère le mouvement de chaque Ennemis de la liste.  <a href="#fb49a06f55bafd36359fd4c8e5366e35"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="dennemis_8h.html#bae59fbfe7262d5bde3e047951ca16db">dEnnemi_ToucheExplosion</a> (dEnnemi &amp;e, const Terrain &amp;t)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fonction qui teste si un Ennemi de la liste touche une explosion.  <a href="#bae59fbfe7262d5bde3e047951ca16db"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Description détaillée</h2>
Déclarations des types et fonctions pour l'utilisation d'un ensemble d'Ennemis au cours d'une partie de Bomberman. 
<p>
Ce fichier d'en-tête permet la gestion de plusieurs Ennemi pendant une partie. Ce fichier contient les fonctions qui permettent le mouvement, et l'affectation sur le terrain lors de l'Initialisation. <hr><h2>Documentation des fonctions</h2>
<a class="anchor" name="fb49a06f55bafd36359fd4c8e5366e35"></a><!-- doxytag: member="dennemis.h::dEnnemi_GetDirection" ref="fb49a06f55bafd36359fd4c8e5366e35" args="(dEnnemi &amp;e)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char* dEnnemi_GetDirection           </td>
          <td>(</td>
          <td class="paramtype">dEnnemi &amp;&nbsp;</td>
          <td class="paramname"> <em>e</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Fonction qui gère le mouvement de chaque Ennemis de la liste. 
<p>
<dl compact><dt><b>Paramètres:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>e</em>&nbsp;</td><td>une liste d'ennemi en donnée/résultat </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Renvoie:</b></dt><dd>un Tableau de caractère</dd></dl>
Cette fonction prend en paramètre une Liste d'ennemi initialisée. Elle renvoie un tableau de caractères pour chaque Ennemis de la liste qui correspondent aux directions de chaques Ennemis. 
</div>
</div><p>
<a class="anchor" name="f9fa136d9aa779c0b89528bf2224dcca"></a><!-- doxytag: member="dennemis.h::dEnnemi_GetPosition" ref="f9fa136d9aa779c0b89528bf2224dcca" args="(dEnnemi &amp;e)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int* dEnnemi_GetPosition           </td>
          <td>(</td>
          <td class="paramtype">dEnnemi &amp;&nbsp;</td>
          <td class="paramname"> <em>e</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Fonction qui renvoie les positions des Ennemis de la Liste. 
<p>
<dl compact><dt><b>Paramètres:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>e</em>&nbsp;</td><td>une liste d'ennemi en donnée/résultat </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Renvoie:</b></dt><dd>un Tableau d'entier</dd></dl>
Cette fonction prend en paramètre une Liste d'ennemi initialisée. Elle renvoie un tableau d'entiers pour chaque Ennemis de la liste qui correspondent aux positions de chaques Ennemis ( t[0] = posx du 1er ennemi, t[1] = posy du 1er ennemi etc ...). 
</div>
</div><p>
<a class="anchor" name="d7d0de3dee9521b0d68d819e03be4e24"></a><!-- doxytag: member="dennemis.h::dEnnemi_Initialisation" ref="d7d0de3dee9521b0d68d819e03be4e24" args="(dEnnemi &amp;e, const Terrain &amp;t, const int &amp;nb)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dEnnemi_Initialisation           </td>
          <td>(</td>
          <td class="paramtype">dEnnemi &amp;&nbsp;</td>
          <td class="paramname"> <em>e</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Terrain &amp;&nbsp;</td>
          <td class="paramname"> <em>t</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const int &amp;&nbsp;</td>
          <td class="paramname"> <em>nb</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Fonction qui Initialise la liste d'Ennemis et les affecte sur le Terrain. 
<p>
<dl compact><dt><b>Paramètres:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>e</em>&nbsp;</td><td>une liste d'ennemi en donnée/résultat </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>t</em>&nbsp;</td><td>un Terrain en donnée </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>nb</em>&nbsp;</td><td>un Entier en donnée</td></tr>
  </table>
</dl>
Cette fonction prend en paramètre une Liste d'ennemi non initialisée, un Terrain et un entier nb qui correspond au nombre d'Ennemis à initialiser. Une fois la liste initialisée, chaque Ennemi de la liste est affecté au Terrain, chacun des Ennemis ayant une position différente. 
</div>
</div><p>
<a class="anchor" name="82a5e345f7350c5a53d475a51ba26c83"></a><!-- doxytag: member="dennemis.h::dEnnemi_Mouvement" ref="82a5e345f7350c5a53d475a51ba26c83" args="(dEnnemi &amp;e, const Terrain &amp;t)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dEnnemi_Mouvement           </td>
          <td>(</td>
          <td class="paramtype">dEnnemi &amp;&nbsp;</td>
          <td class="paramname"> <em>e</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Terrain &amp;&nbsp;</td>
          <td class="paramname"> <em>t</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Fonction qui gère le mouvement de chaque Ennemis de la liste. 
<p>
<dl compact><dt><b>Paramètres:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>e</em>&nbsp;</td><td>une liste d'ennemi en donnée/résultat </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>t</em>&nbsp;</td><td>un Terrain en donnée</td></tr>
  </table>
</dl>
Cette fonction prend en paramètre une Liste d'ennemi initialisée, et un Terrain. Elle gère de manière aléatoire le mouvement des Ennemis de la liste d'Ennmis en vérifiant si le mouvement est possible. Cette fonction utilise la fonction de mouvement du module Ennemi. 
</div>
</div><p>
<a class="anchor" name="96f1757b6b7f81867d296b4c22a0cc8a"></a><!-- doxytag: member="dennemis.h::dEnnemi_PresenceSurBombe" ref="96f1757b6b7f81867d296b4c22a0cc8a" args="(dEnnemi &amp;e, Bombe *b, Terrain &amp;t)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dEnnemi_PresenceSurBombe           </td>
          <td>(</td>
          <td class="paramtype">dEnnemi &amp;&nbsp;</td>
          <td class="paramname"> <em>e</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Bombe *&nbsp;</td>
          <td class="paramname"> <em>b</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Terrain &amp;&nbsp;</td>
          <td class="paramname"> <em>t</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Fonction qui teste si un Ennemi est sur le rayon d'explosion de la Bombe. 
<p>
<dl compact><dt><b>Paramètres:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>e</em>&nbsp;</td><td>une liste d'ennemi en donnée/résultat </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>b</em>&nbsp;</td><td>un pointeur sur Bombe </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>t</em>&nbsp;</td><td>un Terrain en donnée/résultat</td></tr>
  </table>
</dl>
Cette fonction prend en paramètre une Liste d'ennemi initialisée, un Terrain et une Bombe. Elle teste si chaque ennemis de la liste est présent sur le rayon de la Bombe. Si oui, elle supprime l'ennemi en utilisant la fonction du module. 
</div>
</div><p>
<a class="anchor" name="687e97e24ff526b42b9969055a85fe20"></a><!-- doxytag: member="dennemis.h::dEnnemi_SupprimeEnnemi" ref="687e97e24ff526b42b9969055a85fe20" args="(dEnnemi &amp;e, Ennemi *m)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dEnnemi_SupprimeEnnemi           </td>
          <td>(</td>
          <td class="paramtype">dEnnemi &amp;&nbsp;</td>
          <td class="paramname"> <em>e</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">Ennemi *&nbsp;</td>
          <td class="paramname"> <em>m</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Fonction qui Initialise la liste d'Ennemis et les affecte sur le Terrain. 
<p>
<dl compact><dt><b>Paramètres:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>e</em>&nbsp;</td><td>une liste d'ennemi en donnée/résultat </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>m</em>&nbsp;</td><td>un pointeur sur Ennemi</td></tr>
  </table>
</dl>
Cette fonction prend en paramètre une Liste d'ennemi initialisée, et un pointeur sur Ennemi. Cette fonction supprime l'Ennemi qui correspond à l'Ennemi pointé de la liste. Mais l'Ennemi doit appartenir à la Liste pour être utilisé. 
</div>
</div><p>
<a class="anchor" name="0b8866784edc66fa0a1df290f5381916"></a><!-- doxytag: member="dennemis.h::dEnnemi_Testament" ref="0b8866784edc66fa0a1df290f5381916" args="(dEnnemi &amp;e)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dEnnemi_Testament           </td>
          <td>(</td>
          <td class="paramtype">dEnnemi &amp;&nbsp;</td>
          <td class="paramname"> <em>e</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Fonction qui supprime proprement en Mémoire la liste d'Ennemis. 
<p>
<dl compact><dt><b>Paramètres:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>e</em>&nbsp;</td><td>une liste d'ennemi en donnée/résultat</td></tr>
  </table>
</dl>
Cette fonction prend en paramètre une Liste d'ennemi initialisée. Elle supprime proprement en mémoire la liste d'ennemis. 
</div>
</div><p>
<a class="anchor" name="bae59fbfe7262d5bde3e047951ca16db"></a><!-- doxytag: member="dennemis.h::dEnnemi_ToucheExplosion" ref="bae59fbfe7262d5bde3e047951ca16db" args="(dEnnemi &amp;e, const Terrain &amp;t)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void dEnnemi_ToucheExplosion           </td>
          <td>(</td>
          <td class="paramtype">dEnnemi &amp;&nbsp;</td>
          <td class="paramname"> <em>e</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Terrain &amp;&nbsp;</td>
          <td class="paramname"> <em>t</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Fonction qui teste si un Ennemi de la liste touche une explosion. 
<p>
<dl compact><dt><b>Paramètres:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>e</em>&nbsp;</td><td>une liste d'ennemi en donnée/résultat </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>t</em>&nbsp;</td><td>un Terrain en donnée</td></tr>
  </table>
</dl>
Cette fonction prend en paramètre une Liste d'ennemi initialisée et un Terrain t. Elle teste pour chaque Ennemis de la liste s'il touche une explosion lorsque la fonction est appelée. Si oui, l'ennemis est supprimer à l'aide de la fonction de suppression du module. 
</div>
</div><p>
</div>
<hr size="1"><address style="text-align: right;"><small>Généré le Sun Jun 7 15:01:15 2009 pour SuperBomberman par&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address>
</body>
</html>
